<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:p="http://primefaces.prime.com.tr/ui"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:f="http://java.sun.com/jsf/core">

    <f:metadata>
        <f:event type="preRenderView" listener="#{sessionManaged.validar_session('wfrmUsuario')}"/>
    </f:metadata>
    <body>

        <ui:composition template="./../../../template.xhtml">
            <ui:define name="main_content">
                <ui:include src="/web-pages/OTROS/HELP/wfrmHelp_mtto.xhtml">
                    <ui:param name="toolBarWidth" value="850"/>
                    <ui:param name="toolBarTitleWidth" value="800"/>
                    <ui:param name="title" value="USUARIO"/>
                </ui:include>
                <div align="left" >
                    <p:panel header="Informaci&oacute;n de Usuarios" style="width:850px" >

                        <ui:include src="/web-pages/OTROS/wfrmMensaje.xhtml"/>

                        <h:form id="roles1">
                            <p:panel header="Datos de Empleado" style="width: inherit" toggleable="true">
                                <f:facet name="header">
                                    <h:outputText value="Datos de Empleado" />
                                    <p:commandButton image="ui-icon ui-icon-search" onclick="dialogBuscarEmpleado.show()"/>
                                </f:facet>
                                <h:panelGrid id="pEmpleado" columns="6">
                                    <h:outputText value="&Aacute;rea" /><p:inputText value="#{usuarioManaged.selectedEmpleado.nombre_a}" style="width: 175px" readonly="true" />
                                    <h:outputText value="Cargo" /><p:inputText value="#{usuarioManaged.selectedEmpleado.nombre_c}" style="width: 175px" readonly="true" />
                                    <h:outputText value="Nombre" /><p:inputText value="#{usuarioManaged.selectedEmpleado.nombreCompleto}" style="width: 250px" readonly="true" />
                                </h:panelGrid>
                            </p:panel>
                            <br/>
                        </h:form>

                        <p:panel header="Datos de Usuario" style="width: inherit" >
                            <h:form id="usuario">
                                <h:panelGrid id="pUsuario1" columns="6" style="width:inherit" >
                                    <h:outputText value="Nivel"/><p:spacer width="35" height="10"/>

                                    <h:selectOneMenu value="#{usuarioManaged.selectedUsuario.nivel}" style="width: 185px">
                                        <f:selectItems value="#{usuarioManaged.cmbPermisos}"/>
                                    </h:selectOneMenu>
                                   
                                    <h:selectBooleanCheckbox value="#{usuarioManaged.selectedUsuario.estado_filter_u}" style="width: 25px"/>
                                    <h:outputText value="Usuario Inactivo"/>
                                </h:panelGrid>

                                <h:panelGrid id="pUsuario2" columns="3" style="width:inherit" >
                                    <h:outputText value="Usuario"/><p:spacer width="18" height="10"/>
                                    <p:inputText value="#{usuarioManaged.selectedUsuario.username}" style="width: 450px" maxlength="25"/>
                                </h:panelGrid>

                                <h:panelGrid id="pUsuario3" columns="4" style="width:inherit" >
                                    <h:outputText value="Contrase&ntilde;a"/>
                                    <p:password minLength="5" maxlength="15" value="#{usuarioManaged.selectedUsuario.pw}" feedback="true" promptLabel="Favor ingresar la contrase&ntilde;a" weakLabel="Contrase&ntilde;a d&eacute;bil" goodLabel="Contrase&ntilde;a Aceptable" strongLabel="Contrase&ntilde;a Fuerte" />

                                    <h:outputText value="Confirmar Contrase&ntilde;a"/>
                                    <p:password minLength="5" maxlength="15"  value="#{usuarioManaged.selectedUsuario.pwc}" feedback="true" promptLabel="Favor ingresar la contrase&ntilde;a" weakLabel="Contrase&ntilde;a d&eacute;bil" goodLabel="Contrase&ntilde;a Aceptable" strongLabel="Contrase&ntilde;a Fuerte"  />
                                </h:panelGrid>

                                <div align="center">
                                    <h:panelGrid id="cmdButtones" columns="2" cellpadding="5" style="width:inherit">
                                        <p:commandButton value="#{sms.guardar}" onclick="cmdConfirm.show()" image="ui-icon ui-icon-check"/>
                                        <p:commandButton value="#{sms.limpiar}" actionListener="#{limpiarManaged.limpiar}" update="usuario:pUsuario1 usuario:pUsuario2 usuario:pUsuario3 roles1:pEmpleado grid:table"/>
                                        <p:confirmDialog message="#{sms.iAlmacenada}" header="#{sms.guardar}" severity="alert" widgetVar="cmdConfirm">
                                            <p:commandButton value="Si" actionListener="#{usuarioManaged.UsuarioMantenimiento}" update="grid:table usuario:pUsuario1 usuario:pUsuario2 usuario:pUsuario3 roles1:pEmpleado mensaje" oncomplete="cmdConfirm.hide()" />
                                            <p:commandButton value="No" onclick="cmdConfirm.hide()" />
                                        </p:confirmDialog>
                                    </h:panelGrid>
                                </div>
                            </h:form>
                        </p:panel>
                        <br/>
                        <h:form id="grid">
                            <p:panel header="Datos de Usuarios" style="width: inherit" >
                                <f:facet name="header">
                                    <h:outputText value="Datos de Usuarios"/><p:spacer width="10" height="10"/>
                                    <p:commandButton image="ui-icon ui-icon-search" actionListener="#{usuarioManaged.fillGrid}" title="Buscar Datos de Usuarios" update="grid:table mensaje"/>
                                </f:facet>
                                <p:dataTable id="table" value="#{usuarioManaged.usuarios}" var="row" rows="15"
                                             paginator="true" paginatorPosition="bottom" selectionMode="single" selection="#{usuarioManaged.selectedUsuario}"
                                             emptyMessage="#{sms.TableEmptyMessage}" onRowSelectUpdate="usuario:pUsuario1 usuario:pUsuario2 usuario:pUsuario3 roles1:pEmpleado"
                                             rowSelectListener="#{usuarioManaged.llenarEmpleado}"
                                             >
                                    <f:facet name="header" >
                                        <h:outputText value="Lista de Empleados con su Informaci&oacute;n de Usuario"/>
                                    </f:facet>
                                    <p:column headerText="Usuario" filterBy="#{row.username}" sortBy="#{row.username}" filterMatchMode="contains">
                                        <h:outputText value="#{row.username}"/>
                                    </p:column>
                                    <p:column headerText="Nombres" filterBy="#{row.nombre_e}" sortBy="#{row.nombre_e}" filterMatchMode="contains">
                                        <h:outputText value="#{row.nombre_e}"/>
                                    </p:column>
                                    <p:column headerText="Apellidos" filterBy="#{row.apellido_e}" sortBy="#{row.apellido_e}" filterMatchMode="contains">
                                        <h:outputText value="#{row.apellido_e}"/>
                                    </p:column>
                                    <p:column headerText="Estado en la empresa" filterBy="#{row.estado}" sortBy="#{row.estado}" filterMatchMode="contains">
                                        <h:outputText value="#{row.estado}"/>
                                    </p:column>
                                    <p:column headerText="Nivel" filterBy="#{row.nivel}" sortBy="#{row.nivel}" filterMatchMode="contains">
                                        <h:outputText value="#{row.nivel}"/>
                                    </p:column>
                                </p:dataTable>
                            </p:panel>
                        </h:form>


                        <ui:include src="/web-pages/RRHH/QUICK/wfrmquick_Empleado.xhtml">
                            <ui:param name="Bean" value="#{usuarioManaged}"/>
                            <ui:param name="dataTableList" value="#{empleadoQuickManaged.empleado_Usuario}"/>
                            <ui:param name="parametroUpdate" value="roles1 mensaje"/>
                        </ui:include>
                    </p:panel>
                </div>
            </ui:define>

        </ui:composition>

    </body>
</html>
